When discussing goblint on Matrix, there were some concerns
around its rules for defining properties:
- having to explicitly track the last property ID, instead
of including N_PROPS in the anonymous enum
- including read-only properties in set() and write-only in get()
adds unreachable code, which is bad for code coverage
Those were considered more important than the benefit of checking
get()/set() with `-Wswitch-enum`, so at least for now stick with
the existing property conventions.
Add a configuration that enables "legacy" style for the corresponding
rules.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/4198>
--- /dev/null
+[rules.property_enum_convention]
+style = "legacy"
+
+[rules.property_switch_exhaustiveness]
+style = "legacy"
+readable_flags = ["ST_PARAM_READABLE", "ST_PARAM_READWRITE"]
+writable_flags = ["ST_PARAM_WRITABLE", "ST_PARAM_READWRITE"]